With the continuing development of computer technology regarding computer graphics, there has been a steady increase in the dependency of designers, engineers, and manufacturers to implement and use CAD (computer aided design) and/or CAM (computer aided manufacturing) systems for assistance in the designing of new projects and in the redesigning of existing projects or processes that have been determined to contain flaws. Many facets of the design process that were once done by hand are now readily accomplished with the aid of computer and graphic systems. In addition, with the increase in computing power and the improved graphical representation of an object, many of the more intricate and elaborate graphical processing tasks are now being accomplished through the utilization of a CAD graphic system.
A CAD or CAM graphic system enables a designer or engineer to develop, design, manipulate, and/or modify any project, a component of the project, or a part of that component. To enable the designer, rendered graphical representations of the components, parts of the components, or entire projects are displayed on a computer video display monitor. These graphic images, which have continually improved from a primitive type of connect-the-dots appearance to that of an almost photographic image, can be presented in two dimensional form, as lines, circles or polygons, or in a three dimensional form as polyhedra, which are sets of polygons. Regardless of the dimensional point of view, all graphics are based on a geometric coordinate system.
In many design situations, specifically when the situation encompasses the development of a large project; for example, an automobile or an airplane, typically, many designers or teams of designers are involved. Each designer or team is usually assigned a portion of the project, or a specific component or sub-assembly of the project. Using the automobile as an example, while one designer, team of designers, an engineer, or team of engineers may be assigned to work on the front brake assembly, another designer or team of designers, etc., may be assigned to work on the front shock absorber assembly, while yet another designer or team of designers, etc., might be assigned to work on the steering assembly.
One of the many critical aspects of designing any project, component, part of that component, or sub-assembly is the necessity to continually examine for an interference in the physical design structure or in the placement of a project's components. Interferences may be examined via a visually displayed graphical representation or by tabular data or other appropriate means to depict interferences calculated via computational methods from geometric representations. The term “interference”, in and of the disclosure of the present invention, can refer not only to the physical proximity of one component, or part of that component, with regard to a second component, or part thereof, wherein that first component either comes into physical contact with the second component and the first component's function is inhibited or restricted, or restricts or inhibits the function or motion of that second component, or part of that second component, but can also refer to the electrical and/or magnetic and/or noise and/or heat or other such field of a project, component, sub-assembly or part thereof that is in conflict with other electrical and/or magnetic and/or noise and/or heat or other such fields present in a project, component, sub-assembly or part thereof. Therefore, this continual process of examination, commonly referred to as “interference checking”, involves a designer, a team of designers, an engineer, or a team of engineers closely observing the interaction among all the designed components or sub-assemblies of the larger overall project and checking for the interferences, whether physical, magnetic, electrical, and/or noise and/or heat or other such fields between any of the involved components or sub-assemblies.
After the designer or team of designers had completed their respective assignments, for example, the steering assembly, the brake assembly, or the shock absorber assembly, the designer or team thereof would then forward their finished work to a central project database, termed a project library or project tree, which could, in this example, contain only those components related to the front end of the exampled automobile. Depending on the overall size of the project, the project library/tree could contain other separate sub-sections or it may contain all of the components contained within the design of the entire automobile. Once the designs had been forwarded to the project library/tree, another team of designers would then perform a barrage of interference checks on the library of project components. In this example, they would check for interferences regarding the interrelationship between the now combined braking, steering, and shock absorbing assemblies, assuring that no component restricts or inhibits the other from performing their respective function, either physically, magnetically, electrically, and/or noise and/or heat or other such interferences.
While these interference checks were being accomplished by the other team, the original designer or team of designers would then move forward to another task while waiting for the results of the interference checks. Perhaps, the next part of the original designer's project was, in part, a continuation of, or a sub-assembly of, the first design recently submitted. If the interference checking produced a unsatisfactory result, the designed component would be returned to the original designer or team for reworking. Depending on the time taken by the interference checking team to complete their task, and also depending on the amount of reworking, redesigning, or reconfiguration of the original component that might be required, some or all of the progress made on the second portion, or any related component, might then have to be discarded or redesigned, and begun anew after the redesigning of the first component has been completed. This is a most inefficient way to provide interference checking which could increase the time required for project completion and the total cost of the project.
More recently, interference checking on projects, assemblies, components, or parts thereof, within most engineering applications has been typically implemented as a function that is performed at certain points within the design process. This may be on a relatively small number of components that might take a few minutes or on complete assemblies that may take hours or even days to complete. To further reduce the processing time necessary to check completed assemblies, interference checking is often performed in a hierarchical manner. This means that when certain subassemblies are completed or combined with other assemblies or subassemblies, for example the shock absorber assembly being combined with the brake assembly, an interference check is performed, which, typically, is still completed after the assembly or sub-assembly is sent to the project library/tree for an assigned team of engineers to perform the interference check.
Although this approach divides the overall project into smaller amounts, this approach still requires the component, part thereof, or subassembly to be forwarded to the project library/tree where there it is subjected to the process of interference checking. While the overall size of each of the interference check processes has been reduced which accelerates the checking process, this approach increases the frequency of interference checking which is still quite disruptive to the design flow of the project. Additionally, interference checking, while being performed more frequently and on smaller portions of the project, is still typically based upon the geometry defining a component, and as such still requires complex mathematical computations to complete the interference check. As a consequence, it still has a disruptive effect on the design work flow and could, as such, become a chore and less likely to be performed as often as preferred.
A further drawback to the prior existing methods of performing the interference checking, is that to perform the required mathematical calculations related to the interference checks, whether being implemented in a desktop workstation or in a large mainframe, the CPU is typically utilized to complete the geometric calculations, which, depending on the size of the project, may take considerable processing power and time to finish. While performing those computations, the processor is preemptively occupied, meaning that only the most rudimentary tasks, if any, will be performed by the CPU while it is performing the computationally intensive calculations required for the interference checking. In addition, because the interference check is a mathematical calculation, dynamic graphics to visually assist in the comprehension of the interferences can only be used after the interferences have been calculated.
In a different approach to solving the problem of interference checking, a polygon cap technique is implemented, as shown in U.S. Pat. No. 5,444,838, entitled COMPUTER SYSTEM AND METHOD FOR INTERFERENCE CHECKING OF POLYHEDRA USING CAPPING POLYGONS, to Kommrusch et al., Date of Patent; Aug. 22, 1995 which describes a process for interference checking that involves an object or a component in question, shown as a polyhedra (plural of polyhedron), referenced by a sectioning plane, and when contacted by the plane, cut and then capped, which is stored in a cap list. Once all polyhedra, which, theoretically, could be in the thousands, has been capped and listed, then all the caps are checked against the other polygons for interferences.
While this approach somewhat alleviates the work flow disturbance of not having to forward the portion to a project library/tree where a team of engineers is assigned to perform interference checking, this method does require the designer, or team thereof, to cease the designing process and begin the tedious task of manually entering the related multitudinous polyhedra information into their workstation, which then performs the necessary calculations. Consequently, the designer is still required to pause/cease designing, manually enter the geometric information related to the object in question, and wait for the computer to complete the interference check is being performed. By requiring the designer to pause and enter the information manually, no real time saving or labor saving advantage is achieved using this approach. In fact, because of the labor required by the designer to manually enter the required information, and then to have to wait for the workstation to perform the necessary calculations, this approach may actually inhibit the design process, and might reduce the number of interference checks that the designer, or team thereof, would and should perform.
Today, however, as computers have become more powerful, designers and engineers are trying to do more “design-in-context”. The designer or team of designers, etc., would, as previously described, utilize a CAD system for assistance in the design of a component and, in addition, the designer or team of designers, etc., would further utilize the CAD system by concerning themselves not only with their assigned portion, component, or sub-assembly, but also they would be concerned with their particular component or subassembly and how the relationship of their component is relevant to the components around it and with respect to the overall structure of the entire assembly or project. Hence, “design-in-context” is with respect of and relative to the entire project.
Thus exists a need for an apparatus, system, and method to provide to an individual designer, engineer, or team of designers or engineers the ability to perform an interference check of a design of a project, component, or part thereof while the individual is disposed at their workstation. Additionally, another need exists for an apparatus, system, and method for performing the interference checking calculations separate of the workstation's CPU. An additional need exists for an apparatus, system, and method for performing the interference check, seamlessly and effortlessly, as part of the “overhead” or total work flow of the design process. A further need exists for an apparatus, system, and method for dynamically displaying a textured representation of the object in a design project, component, or part contained therein, with respect to the overall “design in context” of the entire project, component, or portion thereof.